The creation, manipulation and use of computer representations of three-dimensional objects has considerable utility in a number of technological endeavors. For example, in computer assisted design, it is convenient to be able to create computerized representations of objects ranging in size from very large buildings to automobiles to components having microgeometries. In computer animation, it is desirable to have a three-dimensional representation of an object when preparing perspective views of three-dimensional scenes. Typically, three-dimensional objects are represented for computerized manipulation and use as a "wire frame." A wire frame consists of a number of vertices (i.e., points) in three-dimensional space specified with reference to a coordinate system. The points in three-dimensional space are typically joined by lines to create sets of linked or related polygons. Each polygon usually represents a generally flat surface element depicting a portion of the object being represented. Preferably, for certain applications, the surface polygons are triangular because one can guarantee that three points will lie in the same plane. Certain commercial software packages, however, utilize a rectangle or polygons of order higher than 4 as long as the vertices lie in the same plane.
The resolution of a wire frame is determined by the number of vertices and their spacing. If a large number of surface elements are utilized and each surface element is very small, then the three-dimensional wire frame will approximate very closely the surface of the object being represented. On the other hand, if there are few points and the surface elements are large, the representation of the object will miss details which are smaller than the minimum size of the surface element. This is analogous to trying to represent a chair utilizing one foot square pieces of cardboard linked together. Such a representation would be very crude at best. However, if one were to represent a chair using the rectangular areas bounded by the thread of a slip cover, the representation would be much finer and would capture much more detail than would be permitted by the one foot squares of cardboard.
One of the problems of representing wire frames has to do with identifying point locations on a smoothly varying contour. On a smooth contour there are no reference points which are easily identifiable from image views taken from different perspectives. Therefore, it is difficult to identify corresponding points on two images for calculating depth.
In the prior art, there is some difficulty generating life-like wire frame representations of faces. This is because some judgment is required as to the selection of which points to utilize as vertices for the representation and also because the rendering of a 3-D surface of wire frame of a face (that is, the placement of a "skin" over a wire frame) does not result in a realistic presentation. The traditional rendering techniques simply pick a solid color and texture and render it with various lighting and shadow differences. The color is so uniform as to be patently artificial. Further, in the prior art, there is a trade-off between the coarseness of the wire frame and the rendering techniques utilized. Very high resolution wire frames permit traditional rendering techniques to create a more acceptable rendition than coarse wire frames. A coarse wire frame adds unnatural discontinuities at surface element boundaries to the artificiality of uniform texture and color.
Further, the prior art does not possess the capability to change camera (viewer) view point such as by zooming during a morphing sequence in which one stereo image is changed into another.